package com.sg.service.base.finance;

import com.sg.dto.base.finance.req.*;
import com.sg.entity.OmsAccount;

import java.util.List;

/**
 * @author ：
 * @version 1.0
 * @date ：
 */
public interface MOmsAccountService {
    /**
     * 7-1-01-批量查询财务账户列表ByIds
     */
    List<OmsAccount> batchQueryFinanceAccountListByIds(BatchQueryFinanceAccountListByIdsReq reqDto);

    /**
     * 7-1-01-查询资金账户详情
     */
    OmsAccount queryFinanceAccountDetailCom(QueryFinanceAccountDetailComReq reqDto);

    /**
     * 7-1-01-新增资金账户
     */
    String addFinanceAccount(OmsAccount omsAccount);

    /**
     * 7-1-01-修改账户自动加
     */
    boolean updateAutoAddAccount(OmsAccount omsAccount);

    /**
     * 7-1-01-修改账户自动减
     */
    boolean updateAutoSubAccount(OmsAccount omsAccount);

    /**
     * 111117-1-01执行实体账户自动加
     */
    boolean implementAutoAddEntityAccount(OmsAccount omsAccount);

    /**
     * 11117-1-01执行实体账户自动减
     */
    boolean implementAutoSubEntityAccount(OmsAccount omsAccount);

    /**
     * 7-1-01修改资金账户
     */
    boolean updateFinanceAccount(OmsAccount omsAccount);

    /**
     * 7-1-01查询资金账户列表
     */
    List<OmsAccount> queryFinanceAccountList(QueryFinanceAccountListReq reqDto);

    /**
     * 7-1-01批量删资金账户
     */
    boolean batchDeleteFinanceAccount(List<String> reqDto);

    /**
     * 7-1-01执行归属主体标识右模糊查账户
     */
    List<OmsAccount> implementContentCodeRightBlurQueryAccount(ImplementContentCodeRightBlurQueryAccountReq reqDto);

    /**
     * 7-1-01批量查询财务账户byCode
     */
    List<OmsAccount> batchQueryFinanceAccount(BatchQueryFinanceAccountReq reqDto);

    /**
     * 7-1-01批量改资金账户
     */
    boolean batchUpdateFinanceAccount(List<OmsAccount> omsAccount);
    //
}
